QT QLineEdit使用详解 您所在的位置:网站首页 qt lineedit设置默认值为USer QT QLineEdit使用详解

QT QLineEdit使用详解

2024-01-30 23:06| 来源: 网络整理| 查看: 265

本文详细的介绍了QLineEdit控件的各种操作,例如:编辑框的状态、边框、密码框、限制输入类型、对齐方式、验证器的使用、样式表的应用等操作。

QLineEdit允许用户输入和编辑单行纯文本,提供了很多有用的编辑功能,包括:边框、密码框、限制输入类型、对齐方式、验证器的使用、撤消和重做、剪切和粘贴、以及拖放(setDragEnabled())通过改变输入框的echoMode(),同时也可以设置为一个“只写”字段,用于输入密码等。文本的长度可以被限制为maxLength(),可以使用一个validator()或inputMask()来任意限制文本。当在同一个输入框中切换验证器和输入掩码的时候,最好是清除验证器或输入掩码,防止不确定的行为。

本文作者原创,转载请附上文章出处与本文链接。

QT LineEdit控件使用详解目录

1. 编辑状态

2. 隐藏边框

3. 限制字节

4. 密码框

5. 类型限制

6. 对齐方式

7. 添加图标

8. 验证器

9. 样式表 1. 编辑状态   NoFocus设置取消焦点,所以编辑不了。setEnabled禁用启用控件。

    ui->lineEdit->setText("不可修改");     ui->lineEdit->setFocusPolicy(Qt::NoFocus);                      //能否编辑     //ui->lineEdit->setEnabled(false);//true                        //控件禁用

2. 隐藏边框   隐藏边框样式

ui->lineEdit->setStyleSheet("background:transparent;border-width:0;border-style:outset"); //不

3. 限制字节   限制可以输入的字节数

    ui->lineEdit_2->setPlaceholderText("You can enter up to 6 characters");     ui->lineEdit_2->setMaxLength(6);                                //最多输入6个字符

4. 密码框   一般设置为默认Normal,Password为密码框,NoEcho设置在一些数据库输入密码的时候就是类似这种不可见。

   

ui->lineEdit_3->setPlaceholderText("密码"); ui->lineEdit_3->setEchoMode(QLineEdit::Password);               //密码,一般是用小黑点覆盖你所输入的字符 //ui->lineEdit_3->setEchoMode(QLineEdit::Normal);                 //默认,输入什么即显示什么 //ui->lineEdit_3->setEchoMode(QLineEdit::NoEcho);                 //任何输入都看不见(只是看不见,不是不能输入)

5. 类型限制   类型限制,可以限制数字、英文范围,还可以限制输入类型。

     ui->lineEdit_4->setPlaceholderText("DoubleSize");     // 整形 范围:[1, 99]     QIntValidator *pIntValidator = new QIntValidator(this);     pIntValidator->setRange(1, 99);     // 字符和数字     QRegExp reg("[a-zA-Z0-9]+$");     QRegExpValidator *pValidator = new QRegExpValidator(this);     pValidator->setRegExp(reg);     // 浮点型 范围:[-360, 360] 精度:小数点后2位     QDoubleValidator *pDoubleValidator = new QDoubleValidator(this);     pDoubleValidator->setRange(-360, 360);     pDoubleValidator->setNotation(QDoubleValidator::StandardNotation);     pDoubleValidator->setDecimals(2);     //设置条件     ui->lineEdit_4->setValidator(pDoubleValidator);

6. 对齐方式   输入对齐方式。

    ui->lineEdit_5->setPlaceholderText("对齐方式");     ui->lineEdit_5->setAlignment(Qt::AlignCenter);                  //居中对齐     //ui->lineEdit_5->setAlignment(Qt::AlignRight);                 //右对齐     //ui->lineEdit_5->setAlignment(Qt::AlignLeft);                  //左对齐

7. 添加图标   实际中图标在左边的位置挺多的,但是图标在右边的时候也会有遇到,例如手机号验证右边会放个ico。

  

    // 添加action     ui->lineEdit_6->setPlaceholderText("添加ico");     QAction *pLeadingAction = new QAction(this);     pLeadingAction->setIcon(QIcon("D:/ico.ico"));     ui->lineEdit_6->addAction(pLeadingAction, QLineEdit::LeadingPosition);//QLineEdit::TrailingPosition

8. 验证器   验证器可以实现很多功能,我的另一篇博客有专门介绍验证器:https://blog.csdn.net/qq_37529913/article/details/109440819 大家也可以按着示例来研究

    //手机号     QRegExp rC("^1([358][0-9]|4[579]|66|7[0135678]|9[89])[0-9]{8}$");     //邮箱     QRegExp rE("^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(.[a-zA-Z0-9_-]+)+$");     QRegExp rx( "(-|\\+)?[0-8]\\d:[0-5]\\d:[0-5]\\d" );       //ui->lineEdit_7->setPlaceholderText("时间格式");     //ui->lineEdit_7->setInputMask("0000-00-00 00:00");     ui->lineEdit_7->setValidator(pDoubleValidator );     ui->lineEdit_7->setValidator( new  QRegExpValidator(rC, ui->lineEdit_7));       //验证器 IP、MAC地址、日期、License号     ui->lineEdit_8->setInputMask("000.000.000.000;_");     //ui->lineEdit_8->setInputMask("HH:HH:HH:HH:HH:HH;_");     //ui->lineEdit_8->setInputMask("0000-00-00");     //ui->lineEdit_8->setInputMask(">AAAAA-AAAAA-AAAAA-AAAAA-AAAAA;#");       QString str =ui->lineEdit_9->text();     int i =ui->lineEdit_9->text().toInt();     double dou =ui->lineEdit_9->text().toDouble();

9. 样式表 参考作者样式文章:QT样式表 https://blog.csdn.net/qq_37529913/article/details/108735409 参考作者样式文章:QSS样式表 https://blog.csdn.net/qq_37529913/article/details/109288422 参考作者样式文章:https://blog.csdn.net/qq_37529913/article/details/115409726



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有